﻿#pragma once

#include "ais_base.h"
#include "geom/geom_point.h"

namespace CAGD
{

/**
 * 交互杆.
 */
class AIS_Pole : public AIS_Base
{
  public:
    /**
     * @brief 基本构造.
     * @param p1
     * @param p2
     * @see
     */
    AIS_Pole(Handle(GeomPoint) p1, Handle(GeomPoint) p2);

    /**
     * @brief 刷新信息.
     * @return
     * @see
     */
    void UpdateInfo() override;

    /**
     * @brief 获得类型.
     * @return
     * @see
     */
    AIS_Type GetType() const override;

    /**
     * @brief 获得点.
     * @return
     * @see
     */
    Handle(GeomPoint) * GetPoints();

  protected:
    Handle(GeomPoint) m_p[2];
};

} // namespace CAGD
